Drug infusion system and method adapted to start during programming cycle

ABSTRACT

Drug infusion system capable of delivering a fluid medication to a patient and method for doing same is described. An implantable drug delivery device is capable of delivering the fluid medication at a programmable rate to the patient under control of an original programming cycle having a plurality of steps in a plurality of time slots beginning at a starting time. The programming cycle specifies the programmable rate for each of the plurality of steps. An external controller is capable of storing a program representative of the original programming cycle in the implantable drug delivery device at a programming time. The drug infusion system adjusts the implantable drug delivery device so that the original programming cycle will begin at a time during the original programming cycle adjusted for the programming time.

RELATED APPLICATIONS

This application is a divisional of U.S. patent application Ser. No.10/837,500, filed Apr. 30, 2004, now allowed, entitled “Drug InfusionSystem and Method Adapted to Start During Programming Cycle”; which wasa continuation-in-part of U.S. patent application Ser. No. 10/459,672,filed Jun. 11, 2003, now U.S. Pat. No. 7,008,413, issued Mar. 7, 2006,entitled “Generic Multi-Step Therapeutic Treatment Protocol”; which wasa divisional of U.S. patent application Ser. No. 09/302,613, filed Apr.30, 1999, now U.S. Pat. No. 6,579,280, issued Jun. 17, 2003 entitled“Generic Multi-Step Therapeutic Treatment Protocol”, all of whichapplications are incorporated herein by reference in their entireties.

This application also claims the benefit of U.S. Provisional PatentApplication No. 60/508,019, filed Oct. 2, 2003, now expired, entitled“Method and Apparatus for Multi-Step Prescription Table Display andDownload in Implantable Pump”; and U.S. Provisional Patent ApplicationNo. 60/496,968, filed Aug. 20, 2003, now expired, entitled “Method andApparatus for Multi-Step Prescription Table Display and Download inImplantable Pump”, both of which applications are incorporated herein byreference in their entireties.

FIELD OF THE INVENTION

This invention relates to drug infusion systems and, in particular, druginfusion systems that are programmable.

BACKGROUND OF THE INVENTION

Drug infusion systems dispense fluid medication, containing a drug, to apatient. Some drug infusion systems are portable, allowing a patient toreceive fluid medication while remaining mobile. In addition, some druginfusion systems are implantable to more effectively and lessobtrusively dispense such fluid medication to a patient.

Implantable devices and techniques for treating a patient by druginfusion are well known in the prior art. For instance, U.S. Pat. No.5,782,798, Rise, entitled “Techniques For Treating Eating Disorders ByBrain Stimulation and Drug Infusion”; and U.S. Pat. No. 5,814,014,Eisberry et al, “Techniques of Treating Neurodegenerative Disorders byBrain Infusion”, each assigned to Medtronic, Inc., Minneapolis, Minn.,disclose such devices and techniques and are hereby incorporated byreference.

Another example of a drug infusion device is shown in U.S. Pat. No.3,527,220, Summers, entitled “Implantable Drug Administrator”, animplantable drug administrator having a refillable bladder which can befilled with a drug and a pump for selectively pumping the drug from thebladder into any desired area of the body. The administrator includes anindicator for indicating when the desired amount of the drug has beeninjected.

In U.S. Pat. No. 3,951,147, Tucker et al, entitled “Implantable InfusatePump”, a rechargeable infusate pump for implantation in the human bodycan be refilled periodically by injection through an inlet septum underthe skin. A conduit conducts fluid to an infusion site in the body. Thepump outlet includes a special controller flow controller which is ableto very accurately meter the infusate to the selected body site.

U.S. Pat. No. 4,692,147, Duggan, “Drug Administration Device”, assignedto Medtronic, Inc., Minneapolis, Minn., discloses an implantable drugadministration device which can be non-invasively programmed to changeboth the dosage amount and the dosage interval. Verification of thereceived dosage and interval commands is achieved by means of an audiotransducer which is attached to the device case.

The implantable drug administration device described in Duggan allows amedical professional to program to the delivery rate of a drug containedin the reservoir of the device over a specified interval. The process,however, to achieve an even reasonably complex dosing regimen islaborious and time consuming. Each interval must be specified and theparticular delivery rate must be individually programmed. For all butthe simplest of dosing regimens, this system is not only laborious andtakes too long to program but also prone to error due to the painstakingprogramming steps which must be accomplished.

Implantable drug infusion devices and systems are commonly programmablewith a plurality of programming steps. Each programming step typicallyis conducted for a specific time or a specific period of time andspecifies an amount of fluid medication or a rate of delivery of fluidmedication to a patient. A plurality of programming steps can typicallybe sequenced to create a programming cycle delivering fluid medicationto a patient at different rates on different days and, perhaps, atdifferent times.

A program cycle is typically designed, i.e., planned and developed, tocover a set of known time periods, e.g., a period of one week. Each dayof the week could be separately programmed or one program could duringeach week day and a different program could run on a weekend day, forexample. Each step in the program cycle, perhaps each hour of the day,could have a different programmed delivery amount or delivery rate.

As an example, drug infusion devices could deliver more pain medicationduring night-time hours when a patient has a need to sleep and less painmedication during waking hours. Other patient activity schedules can andare accommodated, of course.

Since the program cycle is typically designed to be effective based upona patient's changing needs during the period of time covered by theprogramming cycle, the programming cycle typically is essentiallyconstructed with a beginning time corresponding to a natural beginningof the patient's activity cycle. For example, a programming cycle maybegin at midnight on Sunday night/Monday morning or perhaps at a timecorresponding to the patient's arising at the beginning of the workweek, e.g., around 6:00 a.m. to 8:00 a.m. on Monday morning.

Upon implantation of the drug infusion device, the device may need to beprogrammed, i.e., a new or modified programming cycle may need to beinstalled, loaded and/or activated. Or, not infrequently, the druginfusion device may need to be adjusted or readjusted to take intoaccount variations in the patient's condition and/or the patient'sactivities, for example.

Usually the time at which such implantation and/or adjustment or otherprogramming activities occur when convenient for both the medicalprofessional and the patient to schedule a visit. Such a visit usuallyoccurs during daytime hours of a week day, i.e., usually clearly not ata time associated with a natural beginning of a patient's activitycycle.

When initially programmed and/or adjusted, it is usually desirable forthe programming cycle to take effect immediately or at a time earlierthan the next beginning of the full programming cycle. For example, if aprogramming cycle ran for a full week with a starting time of 12:01 a.m.on Monday morning and the initial programming and/or adjustmentappointment occurred at 3:00 p.m. on Tuesday afternoon, the patientwould have to wait until the next Monday morning to take advantage ofthe new or newly adjusted programming cycle.

Further, a similar but somewhat opposite problem occurs when a medicalprofessional wishes to view or review the programming cycle settings ofan existing drug infusion device already being used by a patient. Inorder to make the drug infusion device as small as possible and tomaximize battery life, the programming information is often crypticallyinstalled and formatted in the device. A medical professional whoreviews a programming cycle and may wish to modify the programming cycleat 2:00 p.m. on Wednesday afternoon (during an office visit by thepatient) may find it cumbersome to be reviewing the middle of aprogramming cycle.

BRIEF SUMMARY OF THE INVENTION

The present provides a solution to the above-noted problems and providesa mechanism for an easily understood format for a medical professionalto view, modify, install, update and/or initiate a programming cycle ofa drug infusion device.

The present invention provides a drug infusion system capable ofdelivering a fluid medication to a patient. An implantable drug deliverydevice is capable of delivering the fluid medication at a programmablerate to the patient under control of an original programming cyclehaving a plurality of steps in a plurality of time slots beginning at astarting time. The programming cycle specifies the programmable rate foreach of the plurality of steps. An external controller is capable ofstoring a program representative of the original programming cycle inthe implantable drug delivery device at a programming time. The druginfusion system adjusts the implantable drug delivery device so that theoriginal programming cycle will begin at a time during the originalprogramming cycle adjusted for the programming time.

In a preferred embodiment, the adjusting occurs before the programrepresentative of the original programming cycle is stored in theimplantable drug delivery device.

In a preferred embodiment, the apparatus further has an adjustedprogramming cycle having a new start time corresponding to theprogramming time and wherein the program representative of the originalprogramming cycle comprises the adjusted programming cycle. In apreferred embodiment, the original programming cycle is retained.

In a preferred embodiment, the external controller retains the originalprogramming cycle.

In a preferred embodiment, the implantable drug delivery device retainsthe original programming cycle.

In a preferred embodiment, the adjusting occurs after the programrepresentative of the original programming cycle is stored in theimplantable drug delivery device.

In a preferred embodiment, the start time is adjusted using an offsetfrom the start time to account for the programming time.

In a preferred embodiment, the offset equals an amount of time betweenthe start time and the programming time.

In a preferred embodiment, the offset is stored in the implantable drugdelivery device.

In a preferred embodiment, the start time is adjusted using a timeobtained from a real time clock to account for the programming time.

In another embodiment, the present invention provides a method ofprogramming an implantable drug delivery device which is adapted todeliver a fluid medication at a programmable rate to a patient inplurality of steps in a plurality of time slots. An original programmingcycle is created specifying the programmable rate for each of theplurality of steps on an external controller specifying a starting timefor the original programming cycle. A program representative of theoriginal programming cycle is stored in the implantable drug deliverydevice at a programming time. The implantable drug delivery device isadjusted so that delivery of the fluid medication to the patient willbegin at a time during the original programming cycle adjusted for theprogramming time.

In a preferred embodiment, the starting time and the programming timeare different. In a preferred embodiment, the original programming cycleis reconstructable from the adjusted programming cycle.

In a preferred embodiment, the adjusted programming cycle contains flagsallowing the original programming cycle to be reconstructed from theadjusted programming cycle.

In a preferred embodiment, the offset equals an amount of time betweenthe start time and a current time obtained from the real time clock.

In a preferred embodiment, the real time clock is external to theimplantable drug delivery device.

In a preferred embodiment, the real time clock is internal to theimplantable drug delivery device.

In a preferred embodiment, the adjusting step occurs before the storingstep.

In a preferred embodiment, the adjusting step comprises the step ofcreating an adjusted programming cycle having a new start timecorresponding to the programming time and wherein the storing stepcomprises storing the adjusted programming cycle in the implantable drugdelivery device.

In a preferred embodiment, a further step retains the originalprogramming cycle.

In a preferred embodiment, the retaining step retains the originalprogramming cycle external to the implantable drug delivery device.

In a preferred embodiment, the retaining step retains the originalprogramming cycle in the implantable drug delivery device.

In a preferred embodiment, the adjusting step occurs after the storingstep. In a preferred embodiment, the adjusting step provides an offsetfrom the start time to account for the programming time.

In a preferred embodiment, additionally the offset is stored in theimplantable drug delivery device.

In a preferred embodiment, the adjusting step comprises providing anoffset from the start time using a time obtained from a real time clock.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic view of a drug infusion system of the presentinvention having a drug infusion device implanted within the patient'sbody;

FIG. 2 is a block diagram of a drug infusion system of the presentinvention having an implantable drug infusion device and an externalprogrammer;

FIG. 3 is a flow chart illustrating an embodiment of the presentinvention utilizing recoding and redundant storage of prescriptiontables;

FIG. 4 is a flow chart illustrating an alternative embodiment of thepresent invention utilizing flags to reconstruct the prescription table;

FIG. 5 is a flow chart illustrating an alternative embodiment of thepresent invention utilizing a calculated offset;

FIG. 6 is a flow chart illustrating an alternative embodiment of thepresent invention utilizing a start time and/or day kept by the druginfusion device;

FIG. 7 illustrates a multi-step programming cycle with differentdelivery rates for different days and different times within each of thedays;

FIG. 8 illustrates a multi-step prescription table with a daily cyclewith step changes occurring on an intra day basis (i.e. different partsof the day may have a different dosage) and a multi-step prescriptiontable with a weekly cycle with step changes occurring on a daily basis(i.e. each day of the week may have a different dosage); and

FIG. 9 illustrates a multi-step prescription table with two cycles whichare subset of other, having a daily cycle with intra day step changesand then a weekly cycle in which each day of the week may have adifferent day cycle.

DETAILED DESCRIPTION OF THE INVENTION

The contents of U.S. Pat. No. 4,692,147, Duggan, entitled “DrugAdministration Device”, is hereby incorporated by reference.

FIG. 1 is a schematic view of drug infusion system 12 of the presentinvention. Implantable drug infusion device 14 is shown implanted withinthe body of patient 10. Drug infusion device 14 is programmable througha telemetry link from programmer 20, which is coupled via a conductor 22to a radio frequency antenna 24. Drug infusion device 14 could be, butis not limited to being, a pump for infusing fluid medication into apatient's body. Methods of communicating, using radio frequencytelemetry, with implanted treatment devices in order to program suchimplanted drug infusion devices, are well known in the art.

FIG. 2 is a block diagram of drug infusion system 12 having animplantable drug infusion device 14. Drug infusion device 14 consists ofan internal memory unit 26 containing memory and registers which provideinternal drug delivery instructions to drug delivery module 30. Externalprogrammer 20 acts as an input-output device for drug infusion system 12and also provides computational support for memory unit 26. Memory unit26 and programmer 20, operating together, function as a controller 32controlling drug delivery module 30 in the delivery of fluid medicationto patient 10. In general, drug delivery module 30 is a pump forinfusing a fluid medication, including a drug or a combination of drugs,to patient 10. Drug delivery module 30 has a reservoir 34 for holdingthe fluid medication to be infused and is coupled to patient 10 throughcatheter tubing 36. Such drug delivery modules 30 are well known in theart.

Memory 26 receives programming information, via telemetry, fromprogrammer 20 through conventional means. Programming information, oncestored in memory unit 26, provides the dosing regimen to be performed bydrug delivery module 30.

Drugs may be provided to a patient 10 by drug delivery module 30 at apredetermined dosage, generally calculated as an amount of drug providedto patient 10 in a predetermined period of time. It is typical tospecify such dosage as an amount of drug, e.g., measured in milligrams,per day, or per twenty-four hour period. This dosage amount provides themedical professional with information about the probable efficacy of thedrug and potential harmful side effects of the drug on patient 10.Typically, enough drug must be administered in order to have atherapeutic effect. At the other end of the scale, the amount of thedrug typically must be limited to a maximum amount, typically referredto as the maximum daily dose, in order not to avoid potentially damagingside effects.

It is typically relatively easy for a medical professional to determinethe proper maximum daily dose for patient 10 that, hopefully, willprovide a therapeutic benefit while not producing significant harmfulside effects.

However, patient 10 may have a need for differing amounts of a givendrug during different time intervals. For example, a patient may have agreater need for a drug which provides therapeutic pain relief duringthe nighttime hours in order to allow the patient to sleep. Likewise,this same patient may have less of a need for the drug during activedaytime hours when the patient is concentrating on other activities. Inorder to provide the maximum therapeutic effect of the drug during thehigh-need nighttime hours and to minimize potentially harmful sideeffects, the drug infusion device may be programmed to deliver a greateramount of the drug during certain time intervals, in this case duringthe nighttime hours and a lesser amount of the drug during the normallyactive daytime hours. By cutting down of drug delivery during the activedaytime hours, a greater amount of the drug may be delivered by the druginfusion device during the nighttime hours and still keep the maximumdaily dose within acceptable limits.

In a multi-step or flex prescription table, the dosage of drug or fluidmedication delivery changes based on time. The change in drug deliverybased on time can have a recurring pattern such as daily or weekly.Examples of multi-step or flex prescription table which have dailyrecurrence could be different dosage for morning, afternoon, evening andnight and for weekly recurrence could be different dosage for differentdays of the week and/or different dosage for weekday and weekends, etc.The daily and weekly recurrence could be combined such that we havedifferent dosage during the day and during each or a subset of days ofthe week. Similarly other type of recurrence could also be used with themulti-step/flex prescription table. See, for example, programming cycle510 in FIG. 7.

The term “cycle” refers to each recurrence of the multi-step/flexprescription table and the term “step” for each transition within acycle of the prescription table. Note, a prescription may have more thanone set of cycles. In cases of multiple cycles, one cycle may be withinanother cycle (i.e. one cycle is subset of another) or they may bedisjointed. An example of a cycle within another cycle is amulti-step/flex prescription table having multiple steps during the day,i.e., during the day cycle, (see, for example programming cycle 520 inFIG. 8) and then different day cycle for each day of the week, i.e., theindividual day cycles are considered steps from the weekly cycle'sperspective (see, for example programming cycle 530 in FIG. 8). Thecombined cycle-in-a-cycle programming cycle is illustrated byprogramming cycle 540 in FIG. 9. An example of a disjointed cycle wouldbe one cycle running for x number of weeks and then another cyclerunning for the next y number of weeks, etc. See, for example,programming cycles 550 in FIG. 10. Various permutations of the steps andcycles for the prescription table are also contemplated.

In an embodiment, FIG. 3 illustrates a process of entering a newmulti-step prescription table with a daily cycle with step changesoccurring on an intra day basis, i.e., different parts of the day mayhave a different dosage. Since the entering may occur at a timedifferent than the time and/or day on which the prescription table isintended to commence, an accommodation must be made to allow the patientto begin to benefit from the new prescription table without thenecessity of waiting for the beginning of the next programming cycle.The user, typically a medical professional, enters (110) the multi-stepprescription table, also referred to a program or a programming cycle,based on the calendar, i.e., time frame, on the user-interface inprogrammer 20. Programmer 20 retrieves (112) the current day and timefrom memory or, alternatively, the user will enter the current day andtime. Based on the current time and current day, programmer 20 changes,i.e., recodes, (114) the prescription table such that the prescriptiontable is viewed as starting from the current time and the current day.With this recoding there is no longer any partial cycles. The deliverycycle starts from the current time/date, instead of thephysician/clinician calendar time/date of the programming cycle.Programmer 20 then sends (116) the changed, i.e., recoded, prescriptiontable to the pump, i.e., drug delivery module 30, which immediatelystarts delivering the fluid medication to the patient based on thechanged (recoded) prescription table. Programmer 20 stores (118) a copyof the original prescription table as entered by the user in eitherprogrammer 20 or implantable drug infusion device 14. In a subsequentsession, programmer 20 may display (120) the prescription table asentered by the user by retrieving the original user providedprescription table that was redundantly stored in programmer 20 orimplantable drug infusion device 14.

FIG. 4 illustrates another embodiment of handling the same problemaddressed in FIG. 3. The user enters (210) a multi-step prescriptiontable in a conventional manner based on the user's calendar on the userinterface in programmer 20. Programmer 20 retrieves (220) the currenttime and/or day from memory or, alternatively, the user will enter thecurrent time and/or day. Programmer 20 adds (230) special flags in themulti-step prescription table to mark the user input transitions in theprescription table and then changes (recodes) the prescription tablesuch that the prescription table starts from the current time and/orday. These special flags would include a mark for the first step in thecycle as entered by the user and special flags to indicate any breakupof steps within a cycle (i.e. if the prescription is programmed at 6 PMand the step runs from midnight to midnight, then in this scheme we maybreak it up into two steps) and their recombination points. Programmer20 then sends (240) the changed (recoded) prescription table to druginfusion device 14 which immediately starts delivering the fluidmedication to the patient based on the changed (recoded) prescriptiontable. In a subsequent session, programmer 20 retrieves (250) thespecially added prescription flags and uses the flags placed in theprescription table to recreate and display the prescription table asentered by the user. In this method, the prescription table as enteredby the physician/clinician based on their calendar does not need to beredundantly stored.

FIG. 5 illustrates still another embodiment of handling the same problemaddressed in FIG. 3 with a multi-step prescription table with two cycleswhich are subset of other. The multi-step prescription table has a dailycycle with intra day step changes and then a weekly cycle in which eachday of the week may have a different day cycle. The user enters (310) amulti-step prescription table in a conventional manner based on theuser's calendar on the user interface in programmer 20. Programmer 20retrieves (320) the current time and/or day from memory or,alternatively, the user will enter the current time and/or day.Programmer 20 calculates (330) the time offset between a time associatedwith the prescription table, e.g., the start time and/or day of theprescription table, and the current time and/or day. Programmer 20 thensends (340) the original prescription table as entered by the user todrug infusion device 14 along with the calculated time offset. Druginfusion device 14 uses (350) the offset provided by programmer 20 tofind or calculate the starting point within the prescription table andstarts delivering fluid medication to the patient based on thecalculated starting point in the prescription table. In a subsequentsession, programmer 20 simply retrieves that prescription table whichwas not modified in any way, from either programmer 20 or drug infusiondevice 14, and displays the prescription table to the user. With thismethod there is only one prescription table to store and no recoding ofthe original prescription table is needed. In addition, no specialmarkers or flags are needed for reconstruction of the prescription tablefor display during subsequent sessions, i.e. no recoding, reconstructionor redundant storage of prescription table is required.

The method illustrated in FIG. 5 may be the similar to the methodsillustrated in FIGS. 3 and 4 (single cycle or multi cycle) with theaddition of an intermediary device in between, e.g., a programmer 20 ora remote programming system of some kind. The user creates themulti-step/flex prescription table using the user interface of aphysician/clinician programmer 20 and then transmits it to a userprogrammer 20 or any kind of other programming device using any of thecommunication mode (some examples would be RE, IR, wireless, blue tooth,phone line, interact etc. etc.) or any combination of the devices and/orcommunication modes (i.e. RE or IR etc from the physician/clinicianprogrammer 20 to a device that is hooked up to the phone line and thenvia phone line to a device that is hooked up on the patient side, etc).The patient programmer 20 or the other programming device then downloadsthe prescription table to drug infusion device 14. The four embodimentsillustrated in FIG. 3 through 6 are valid for this implementation. Inaddition, the recoding and/or calculation of the time offset and/orlogic for managing time of day and date may be implemented/present inthe intermediary devices and/or patient programmer 20 instead of thephysician/clinician programmer 20 or drug infusion device 14.

FIG. 6 shows, a multi-step prescription table with two disjointed weeklycycles, each with daily steps. The first weekly cycle runs for X weeksand then ends and then the second weekly cycle starts. The time and/orday is stored and/or kept in drug infusion device 14. The user enters(410) a multi-step prescription table in a conventional manner based onthe user's calendar on the user interface in programmer 20. Programmer20 retrieves (420) the current time and/or day from memory or,alternatively, the user will enter the current time and/or day. The userchecks to make sure that the implant time of day and date matches itstime of day and date. If there are any inconsistencies found between thetime and/or day in drug infusion device 14 and current time and/or dayin programmer 20, programmer 20 prompts (430) the user to correct thetime and/or day or, alternatively, automatically performs thecorrection. Programmer 20 provides a set of choices/suggestions for theuser to follow to resolve them and/or uses some algorithm to resolve thediscrepancy. Programmer 20 then sends (440) the original prescriptiontable to drug infusion device 114 without time and/or day starting pointmodification. If the start of the prescription table is customized bythe user based on their preference, then this start of week day/timeinformation of the programming cycle may also be optionally transmittedalong with the prescription table to drug infusion device 14. Druginfusion device 14 uses its own internal clock (time and/or day) to find(450) the starting point in the prescription table based on the currenttime and/or day starts delivering fluid medication based on the currenttime and/or day. In a subsequent session, programmer 20 retrieves theprescription table, which was not modified, and displays theprescription table to the user. No recoding, reconstruction or redundantstorage of the prescription table is required.

The method illustrated in FIG. 6 may be similar to the methodsillustrated in FIGS. 3 and 4, or used in combination with the methodillustrated in FIG. 5 (e.g., single or multi cycle with onlyphysician/clinician programmer 20 and implantable drug infusion device14 or any combination of other intermediary devices using anycombination of communication modes). All of the illustrated methodsprovide the physician/clinician with the additional ability to start theprescription table at a programmed delay from the current time. In otherwords the physician/clinician can program a start delay for theexecution of the prescription or program a particular point (time/date)for start of prescription table in the recurring cycle (or in the caseof multiple recurring cycle in any one of the cycles). The execution ofthe prescription table remains pending (after it has been programmed bythe physician/clinician) till the time provided by thephysician/clinician is reached or the start delay programmed by thephysician/clinician expires and then the multi-step prescription tablestarts execution based on the time/date at that point (and not when theprescription table was programmed by the physician/clinician).

Although multi-step prescription tables are time dependent (theprescription steps and cycles change with time), the physician/clinicianwould like to view and program the prescription in a time independentcalendar manner, either customized to their preference or based on acommonly used standard such as 12:01 a.m. on Monday morning, rather thanbased on the time when the programming session is taking place.

In the description and illustrations above, a drug infusion system 12has been described which, preferably, is capable of:

a) Starting from any of the step within the first iteration of the cyclebased on the physician/clinician programming calendar and the currenttime of day and/or current day (i.e. for a prescription that hasdifferent dosage for the 7 days of the week, if the programming occurson Wednesday and the physician/clinician calendar week starts fromMonday, then the 1^(st) cycle must start from the 3^(rd) step);

b) Running the starting step for the first cycle for a shorter durationbased on the physician/clinician programming calendar and the currenttime of the day and/or current day (i.e. for a prescription that hasdifferent dosage for the 7 days of the week, if the programming occurson Wed at 6 PM and the physician/clinician calendar starts at 12:01 AMon Monday, then the prescription must start in the 3^(rd) step with only6 hours left for that step (instead of the usual 24 hrs)).

c) Storing or reconstructing the prescription table such that it can bedisplayed back to the physician/clinician in the same calendar formatduring any of the subsequent patient visits as was programmedoriginally.

d) Displaying to the physician/clinician in any calendar format that thephysician/clinician chooses (e.g., the physician/clinician can customizethe calendar and the prescription adjusts based on the calendarcustomization of the physician/clinician) independent of the calendarformat used in previous visits. For example, physicians/clinicians indifferent countries or regions may use calendar formats in theirprogrammer or computer week starting on Monday versus week starting onSaturday).

e) Having a physician/clinician restart a multi-step/flex prescriptionduring subsequent visits using the original multi-step/flex prescriptiontable, with or without changes made to the contents (e.g., dosages) ofthe prescription table, with the system (rather thanphysician/clinician) keeping track of the correct time/date to restartthe prescription at the appropriate place in the prescription table. Thetime/day of the subsequent visit will likely be different from theoriginal visit, and it would be undesirable to restart the prescriptiontable at the original starting point. For example, the initialprogramming of the multi-step prescription table was done at 6 PM onWednesday, the subsequent visit occurs at 10 AM on Monday, and theprescription has a weekly cycle with daily steps. This capability allowsthe prescription to be restarted during the subsequent visit at thepoint on the prescription table corresponding to 10 AM on Monday withoutthe physician/clinician having to pay attention to the time or date.

f) Having a physician/clinician restart a multi-step/flex prescriptionduring subsequent visits using the original multi-step/flex prescriptiontable displayed in a different calendar format, with or without changesmade to the contents (e.g., dosages) of the prescription table, with thesystem (rather than physician/clinician) keeping track of the correcttime/date to restart the prescription at the appropriate place in theprescription table. For example, the initial prescription table iscreated with a calendar format in which the week starts on Monday, andchanges are made to the contents of the prescription table during asubsequent visit while using a calendar format in which the week startson Saturday. The system will restart the prescription at the correcttime taking into account the differences of the calendar format withoutthe physician/clinician having to pay attention to the differentcalendar format.

U.S. patent application Ser. No. 10/278,769, filed Oct. 22, 2002, on“Drug Infusion System Programmable in Flex Mode”, now U.S. Pat. No.7,967,812, issued Jun. 28, 2011, by Keith E. Jasperson, Thomas J. Valineand Frederic J. Wahlquist, and U.S. patent application Ser. No.10/278,767, filed Oct. 22, 2002, on “Drug Infusion System with MultipleMedications”, by Keith E. Jasperson, Thomas J. Valine and Frederic J.Wahlquist, are incorporated herein by reference in their entireties.

While some of the description of the preferred embodiments of theinvention have been described as a particular component of drug infusionsystem 12 performing a particular function, such as calculating anoffset time, it is to be recognized and understood that such referenceis for convenience only and while such may be the preferred arrangement,the functions performed by various components of drug infusion system 12could equally well be performed by another component of drug infusionsystem 12. As an example, certain functions have been ascribed to aprogrammer 20. It is to be recognized and understood that such functionsmight as easily be performed by a physician/clinician programmer, by apatient programmer or by another component altogether, such as byimplantable drug infusion device 14.

Thus, embodiments of the invention are disclosed. One skilled in the artwill appreciate that the present invention can be practiced withembodiments other than those disclosed. The disclosed embodiments arepresented for purposes of illustration and not limitation, and thepresent invention is limited only by the claims that follow.

1. A drug infusion system for delivering a fluid medication to apatient, comprising: an implantable drug delivery device configured todeliver said fluid medication at a programmable rate to said patientunder control of an original programming cycle having a plurality ofsteps in a plurality of time slots beginning at a starting time; saidprogramming cycle specifying said programmable rate for each of saidplurality of steps; an external controller configured to store a programrepresentative of said original programming cycle in said implantabledrug delivery device at a programming time wherein said starting timeand said programming time are different; and said drug infusion systemadjusting said implantable drug delivery device so that said originalprogramming cycle begins at said programming time at a point during saidoriginal programming cycle adjusted for a difference between saidstarting time and said programming time, wherein said adjusting occursbefore said program representative of said original programming cycle isstored in said implantable drug delivery device.
 2. A drug infusionsystem as in claim 1 further comprising an adjusted programming cyclehaving a new start time corresponding to said programming time andwherein said program representative of said original programming cyclecomprises said adjusted programming cycle.
 3. A drug infusion system asin claim 2 wherein said original programming cycle is retained.
 4. Adrug infusion system as in claim 3 wherein said external controllerretains said original programming cycle.
 5. A drug infusion system as inclaim 3 wherein said implantable drug delivery device retains saidoriginal programming cycle.
 6. A drug infusion system as in claim 2wherein said original programming is reconstructable from said adjustedprogramming cycle.
 7. A drug infusion system as in claim 6 wherein saidadjusted programming cycle contains flags allowing said originalprogramming cycle to be reconstructed from said adjusted programmingcycle.
 8. A drug infusion system for delivering a fluid medicationpatient, comprising: an implantable drug delivery device configured todeliver said fluid medication at a programmable rate to said patientunder control of an original programming cycle having a plurality ofsteps in a plurality of time slots beginning at a starting time; saidprogramming cycle specifying said programmable rate for each of saidplurality of steps; an external controller configured to store a programrepresentative of said original programming cycle in said implantabledrug delivery device at a programming time wherein said starting timeand said programming time are different; and said drug infusion systemadjusting said implantable drug delivery device so that said originalprogramming cycle begins at said programming time at a point during saidoriginal programming cycle adjusted for a difference between saidstarting time and said programming time, wherein said adjusting occursafter said program representative of said original programming cycle isstored in said implantable drug delivery device and wherein said starttime is adjusted using a time obtained from a real time clock internalto said implantable drug delivery device to account for said programmingtime.
 9. A method of programming an implantable drug delivery deviceadapted to deliver a fluid medication at a programmable rate to apatient in plurality of steps in a plurality of time slots, comprisingthe steps of: creating an original programming cycle specifying saidprogrammable rate for each of said plurality of steps on an externalcontroller specifying a starting time for said original programmingcycle, wherein said starting time and said programming time aredifferent; storing a program representative of said original programmingcycle in said implantable drug delivery device at a programming time;and adjusting said implantable drug delivery device so that saidoriginal programming cycle begins at said programming time at a pointduring said original programming cycle adjusted for a difference betweensaid starting time and said programming time, wherein said adjustingstep occurs before said storing step.
 10. A method as in claim 9 whereinsaid adjusting step comprises the step of creating an adjustedprogramming cycle having a new start time corresponding to saidprogramming time and wherein said storing step comprises storing saidadjusted programming cycle in said implantable drug delivery device. 11.A method as in claim 10 further comprising the step of retaining saidoriginal programming cycle.
 12. A method as in claim 11 wherein saidretaining step retains said original programming cycle external to saidimplantable drug delivery device.
 13. A method as in claim 11 whereinsaid retaining step retains said original programming cycle in saidimplantable drug delivery device.
 14. A method as in claim 10 whereinsaid original programming cycle is reconstructable from said adjustedprogramming cycle.
 15. A method as in claim 14 wherein said adjustedprogramming cycle contains flags allowing said original programmingcycle to be reconstructed from said adjusted programming cycle.
 16. Amethod of programming an implantable drug delivery device adapted todeliver a fluid medication at a programmable rate to a patient inplurality of steps in a plurality of time slots, comprising the stepsof: creating an original programming cycle specifying said programmablerate for each of said plurality of steps on an external controllerspecifying a starting time for said original programming cycle, whereinsaid starting time and said programming time are different; storing aprogram representative of said original programming cycle in saidimplantable drug delivery device at a programming time; and adjustingsaid implantable drug delivery device so that said original programmingcycle begins at said programming time at a point during said originalprogramming cycle adjusted for a difference between said starting timeand said programming time, wherein said adjusting step occurs after saidstoring step and wherein said adjusting step comprises providing anoffset from said start time using a time obtained from a real time clockthat is internal to said implantable drug delivery device.